home *** CD-ROM | disk | FTP | other *** search
- Short: UDPfuncsV2.6 for Blitz-good for Net games
- Author: anton@ww.co.nz (Anton Reinauer)
- Uploader: anton@ww.co.nz (Anton Reinauer)
- Version: 2.6
- Type: dev/basic
- Requires: dev/basic/TCP-to-Blitz.lha, WB 2.0+, min 1.5 meg mem, TCP stack
- -Ie: Miami, dev/basic/NewCommandSet.lha.
-
- These are functions to use the UDP protocol for multiplayer internet
- games in Blitz2. Also there is a small IRC-like chat program which is a
- good Net game communications test-bed. It checks wether packets have
- arrived at their destination by using an acknowledgement system, and
- resends packets if necessary (it is also able to send packets unreliably
- if wanted). Also it can also act as either a Server or Client. It has full
- Connect/Disconnect routines- each player is informed of the new player and
- starts sending any messages to the new player, as the communication is still
- Peer-To-Peer. Players are automatically disconnected by the Server if they
- can't be contacted for a certain amount of time.
- There are routines to make sure time is synched on all machines. It has
- a good independant interface for your program (well there's one last thing
- to be done :).
- There's a few TCP functions as well, like converting an ASCII address to
- numerical (long), and vice-versa, getting your local IP address etc. Some
- of the log-in and message protocols could be used in TCP games as well.
- It has an Arexx port to allow you to automatically connect to other
- UDP_Chat programs from AmiComSys, IRC, StrICQ etc- you just have to pass a
- host address to UDP_Chat.
-
- UDP is more appropriate for fast action games, like Doom clones,
- XWing clones, or platformers, maze games etc; anything that needs small
- lags (ping times), to remain playable over the Internet/LAN.
-
- What's new in V2.6!
-
- Version 2.6 25/08/1999
- ------------
- Changed the directory name to UDP_Chat instead of UDPtest, as it's no
- longer just a small test program ;-)
- Changed packet numbering for Reliable packets to a two-dimensional
- array (player,message), so packets to each player are tracked separately,
- instead of all messages being in one array. Overall this has sped things
- up slightly, and has made the code much tidier in places. Also, I can now
- easily put in checking for out-of-order incoming packets, and ask for a
- resend.
- Added "Putting the UDP Funcs into your game" item under the UDP Funcs
- section- about bloody time! :)
- Net_protocol_header is V0.6, UDPHeader is V1.3, UDPFuncs are V1.5
- - the UDP socket buffer is now cleared when reconnecting.
- Added in 'player_info.info' array to store information for sending to
- other players, so it's not hard-coded into the Funcs anymore. See
- "Putting the UDP funcs in your game" for details.
- The Client's system time is now synched with the Server's (a fiendish
- bit of coding that was! :) The system time can be accessed on any machine
- by the global variable `system_time.l'. Button '3' now prints out your
- current system time.
- The parameters passed to Send_Reliable_Message{} are now:
- Send_Reliable_Message{address.l,data_length.w,player.w,protocol,ordering}
- and Send_Unreliable_Message{address.l,data_length.w,player,protocol}
- for Send_Unreliable_Message{}. This is a setup for later optimisations
- I'll be doing. So now the address and length of memory to be sent is
- passed instead of the String itself. Also I've set the Functions up to
- allow for the Client-Server protocol in Unreliable messages (it's also set
- up in Reliable), and to allow you to specify wether Reliable packets have
- to be received ordered or can be received unordered. Neither of these
- additions have been implemented yet though.
- See "Putting the UDP funcs into your game" for more details.
- Note: the Arexx routines cause an Enforcer hit, and the ReadUDP Function
- causes a couple- I'll have a look at them soon! :)
-
-
- ============================= Archive contents =============================
-
- Original Packed Ratio Date Time Name
- -------- ------- ----- --------- -------- -------------
- 22203 8736 60.6% 23-Apr-98 12:58:06 +Lag problems in Net games
- 3498 1187 66.0% 16-Jul-99 12:31:18 +Net_protocol_header.bb2
- 396 223 43.6% 16-Jul-99 12:09:16 +Net_protocol_header.bb2.info
- 346574 94153 72.8% 25-Aug-99 13:42:36 +Old_Stuff.lha
- 267 196 26.5% 12-May-98 22:17:14 +Quit_UDP_Chat.rexx
- 1290 666 48.3% 29-Jul-98 15:04:56 +UDP_Chat.rexx
- 49635 19239 61.2% 25-Aug-99 12:46:48 +UDP-Examples.guide
- 464 227 51.0% 16-Aug-99 11:43:52 +UDP-Examples.guide.info
- 78345 19156 75.5% 25-Aug-99 13:02:48 +UDP_ChatV2.6.asc
- 1242 185 85.1% 25-Aug-99 12:47:04 +UDP_ChatV2.6.bb2.xtra
- 6579 2325 64.6% 03-Aug-99 20:30:32 +UDPFuncs.bb2
- 396 221 44.1% 16-Jul-99 12:09:16 +UDPFuncs.bb2.info
- 1537 656 57.3% 15-Aug-99 14:23:00 +UDPHeader.bb2
- 396 221 44.1% 18-Jul-99 20:36:12 +UDPHeader.bb2.info
- -------- ------- ----- --------- --------
- 512822 147391 71.2% 26-Aug-99 20:45:48 14 files
-